/*
    //通过联合类型有两个缺点
    1.进行很多的逻辑判断
    2.返回值的类型依然是不确定的
*/

type AddType = number | string
function add(a1: AddType, a2: AddType) {
    if (typeof a1 === "number" && typeof a2 === "number") {
        return a1 + a2
    } else if (typeof a1 === "string" && typeof a2 === "string") {
        return a1   + a2
    }
}
add(10, 20)

export {}